/////////////////////////////////////////////////////////////////////////
//
// Amuse Engine SDK - resource
// Copyright( c) 2014.  All Rights Reserved
//
// File:		AEResourceManager.inl
// Author:		Gianluca Belardelli
// Date:		30/09/2014
//
/////////////////////////////////////////////////////////////////////////
#ifndef _AERESOURCEMANAGER_INL_
#define _AERESOURCEMANAGER_INL_

AE_FORCEINLINE const char *AEResourceManager::GetName( void ) const
{
	return m_szManagerName;
}

AE_FORCEINLINE AEBOOL32 AEResourceManager::IsSystemManager( void )
{
	return ( m_uiManagerFlags & AERESOURCEMANAGERFLAG_SYSTEM_MANAGER );
}

AE_FORCEINLINE void AEResourceManager::SetManagerFlag( AEUINT32 uiMask )
{
	m_uiManagerFlags |= uiMask;
}

AE_FORCEINLINE void AEResourceManager::RemoveManagerFlag( AEUINT32 uiMask )
{
	m_uiManagerFlags &= ( ~uiMask );
}

AE_FORCEINLINE AEBOOL32 AEResourceManager::IsManagerFlagSet( AEUINT32 uiMask ) const
{
	return ( m_uiManagerFlags & uiMask ) == uiMask;
}

AE_FORCEINLINE AEResource* AEResourceManager::GetResourceByIndex( AEINT32 nIndex ) const
{
	AEASSERT_MSG( m_lsResources.GetSize() < nIndex, "AEResourceManager::GetResourceByIndex indice errato" );
	return m_lsResources[ nIndex ];
}

#endif // _AERESOURCEMANAGER_INL_

